const http = require('http');
const app = http.createServer();

const url = require('url');
const path = require('path');
const fs = require('fs');
const mime = require('mime');

app.on('request', (req, res) => {
    // 获取请求的地址
    let { pathname } = url.parse(req.url);
    // 三元判断
    pathname = pathname == '/' ? '/default.html' : pathname;

    // 把请求的地址转换为硬盘真实路径
    let realPath = path.join(__dirname, 'public', pathname);

    // 每次请求获取文件的类型
    let type = mime.getType(realPath);

    // 读取文件
    fs.readFile(realPath, (err, doc) => {
        if (err != null) {
            res.writeHead(404, {
                'content-type': 'text/html;charset=utf8'
            });
            res.end('没找到该地址');
            console.log('报错信息：' + err);
            return;
        }
        res.writeHead(200, {
            'content-type': type
        });
        res.end(doc);
    })
});


// 监听端口
app.listen(3000);
console.log('网站服务器创建成功');
